home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
050
/
tpcmag.arc
/
CIRCLE.PAS
next >
Wrap
Pascal/Delphi Source File
|
1986-05-14
|
1KB
|
44 lines
Program circle;
var
x, y, r, c : integer;
(* procedure to produce a circle on the screen from PC World May 1986
page 350 by Dan Leska of Nichols, NY. *)
Procedure circle(xorigin,yorigin,radius,color : integer);
var
incrmnt, xequat : real;
begin
incrmnt := radius + 0.25;
repeat
incrmnt := incrmnt - 0.25;
xequat := sqrt(sqr(radius) - sqr(incrmnt));
plot (round(xorigin + xequat), round(yorigin + incrmnt), color);
plot (round(xorigin - xequat), round(yorigin - incrmnt), color);
plot (round(xorigin + xequat), round(yorigin - incrmnt), color);
plot (round(xorigin - xequat), round(yorigin + incrmnt), color);
until (incrmnt = 0);;
draw (xorigin - round(radius * 0.12), yorigin + radius,
xorigin + round(radius * 0.15), yorigin + radius, color);
draw (xorigin - round(radius * 0.12), yorigin - radius,
xorigin + round(radius * 0.15), yorigin - radius, color);
end; { procedure circle(xorigin,yorigin,radius,color : integer); }
{demonstration program begins here}
begin
x := 160;
y := 100;
r := 50;
c := 6;
GraphMode;
circle (x,y,r,c);
while not keypressed do;
TextMode(C80);
TextColor(green);
end. {circle}